// src 目录下的文件修改可以不用重启服务器，
// 因为该目录中的所有文件都会触发热更新

// 因为 src 目录中所有的js代码都会被 bable 处理
// 如果进行 模块加载 node模块的 module.exports 导出的数据都会被 bable 在包装成如下结果
//   { default:module.exports导出值 }
// let aaa = require("vue");
// console.log(aaa);

// import 变量名 from 模块 - ES6 模块导入语法
// ES6 语法中 from 后续取值 和 require 函数参数 一致
// 同时 import 后的变量 会自动完成 导出对象的 default 取值解构和重新命名
import Vue from 'vue'
//  等效于 node 的  let { default:Vue } = require("vue");
// console.log(Vue);


// vue的模块环境还扩展了 模块的文件类型范围
// node .js .json .node
// vue模块 .js .json .vue -> 是会在vue模块项目中被 vue-loader模块解析的
//         图片文件 样式文件
import App from './App.vue'

// import img from "./assets/loading.gif";
// console.log(img);

// import "./assets/css/base.css"

// Vue 的相关全局配置
Vue.config.productionTip = false


// 创建一个 vue 运行的实例，启动vue项目
//  $mount('#root') 完成vue实例和index.html 页面中展示元素的关联
// 通过 render 函数将 new Vue 页面定义权限进行取消
// 并将页面的定义 交由 App 组件进行管理
//  所以模块化项目中
//    Root 为启动引导组件 （new Vue）
//    App 为页面的组合构成容器组件 - 后续所有页面的变化都从 App 开始
new Vue({
  render: h => h(App),
}).$mount('#root')

// new Vue({
//   el:"#root",
//   render: function(crateElement){
//     return crateElement(App);
//   }
// });
